
package bean;

import dao.ProveedorDao;
import dao.impl.ProveedorDaoImpl;
import java.io.Serializable;
import java.util.List;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import model.Proveedor;


@ManagedBean(name="proveedorBean")
@SessionScoped
public class ProveedorBean implements Serializable{

    private Proveedor proveedor;
    private List<Proveedor> proveedores;

    public ProveedorBean() {
        proveedor = new Proveedor();
    }

    public Proveedor getProveedor() {
        return proveedor;
    }

    public void setProveedor(Proveedor proveedor) {
        this.proveedor = proveedor;
    }

    public List<Proveedor> getProveedores() {
        ProveedorDao proveedorDao =new ProveedorDaoImpl();
        proveedores=proveedorDao.buscarTodos();
        return proveedores;
    }

    public void setProveedores(List<Proveedor> proveedores) {
        this.proveedores = proveedores;
    }
    
     public void prepararInsertar(ActionEvent actionEvent) {
        proveedor = new Proveedor();
        
    }

    public void insertar(ActionEvent actionEvent) {
        ProveedorDao proveedorDao = new ProveedorDaoImpl();        
        proveedorDao.insertar(proveedor);
        FacesContext context = FacesContext.getCurrentInstance();
        context.addMessage(null, new FacesMessage("Proveedor insertado"));
        proveedor = new Proveedor();
    }

    public void prepararActualizar(int id) {
        ProveedorDao proveedorDao = new ProveedorDaoImpl();
        proveedor = proveedorDao.buscarPorId(id);
    }

    public void actualizar(ActionEvent actionEvent) {
        ProveedorDao proveedorDao = new ProveedorDaoImpl();
        proveedorDao.actualizar(proveedor);
        FacesContext context = FacesContext.getCurrentInstance();
        context.addMessage(null, new FacesMessage("Proveedor actualizadoo"));
        proveedor = new Proveedor();
    }

    public void prepararEliminar(int id) {
        ProveedorDao proveedorDao = new ProveedorDaoImpl();
        proveedor = proveedorDao.buscarPorId(id);
    }

    public void eliminar() {
        ProveedorDao proveedorDao = new ProveedorDaoImpl();
        proveedorDao.eliminar(proveedor);
        FacesContext context = FacesContext.getCurrentInstance();
        context.addMessage(null, new FacesMessage("Proveedor eliminado"));
        proveedor = new Proveedor();
    }

    public void cancelar(ActionEvent actionEvent) {
        proveedor = new Proveedor();
    }

    
    
}
